package ca.jsbr.as2js_lib.event 
{
	/**
	 * ...
	 * @author jsbr [me@jsbr.ca]
	 */
	public class MouseJSEvent 
	{
		
		static public const MOUSE_MOVE:String = "mousemove";
		static public const MOUSE_OVER:String = "mouseover";
		static public const MOUSE_OUT:String = "mouseout";
		static public const MOUSE_DOWN:String = "mousedown";
		static public const MOUSE_UP:String = "mouseup";
		static public const MOUSE_CLICK:String = "mouseclick";
		
		private var _type:String;
		private var _stageX:int;
		private var _stageY:int;
		private var _currentTarget:Object;
		private var _skip:Boolean;
		
		public function MouseJSEvent(type:String,stageX:int=0,stageY:int=0) 
		{
			
			_stageY = stageY;
			_stageX = stageX;
			_type = type;
			
		}
		
		public function get type():String 
		{
			return _type;
		}
		
		public function get stageX():int 
		{
			return _stageX;
		}
		
		public function get stageY():int 
		{
			return _stageY;
		}
		
		public function get currentTarget():Object 
		{
			return _currentTarget;
		}
		
		public function set currentTarget(value:Object):void 
		{
			_currentTarget = value;
		}
		
		public function clone():MouseJSEvent
		{
			return new MouseJSEvent
		}
		
		public function get skip():Boolean 
		{
			return _skip;
		}
		
		public function stopPropagation():void
		{
			_skip = true;
		}
		
	}

}